import type { RiderEvaluate } from '@/pages/evaluate/type'
import { Page } from '../generic/Page'
import type ShopEvaluate from '@/pages/evaluate/type'

export class SubmitOrder {
  /* 不可修改属性 */
  /** */
  shopId: number
  /** 经营类型-取货方式(1支持配送、2支持店食、3、支持自提） */
  receivingMethod: string
  /** 是否尽快 */
  isImmediate: number | null
  /** 指定的预计交付时间 */
  specifiedTime: Date | null
  /** 收货地址id */
  addressBookId: number

  /* 可修改属性 */
  /** 座位号 */
  seatNumber?: string
  /** 备注信息 */
  remark?: string

  /** false表示先平台券再店铺券, true表示先店铺券再平台券 */
  public isPlatformCouponFirst: boolean

  /** 平台满减券 */
  public platformCouponIds: number[]

  /** 店铺满减券/折扣券 */
  public shopCouponIds: number[]
}
export class OrderListForUserPage extends Page {
  /**
   * 搜索的keyword
   */
  public keyword: string
  public state: number
}

/**
 * 订单评价提交dto
 *
 * @author zhuangjie
 * @date 2024/04/25
 */
export default class OrderEvaluateSubmitDTO {
  /** 对骑手的评价 */
  public riderEvaluate: RiderEvaluate | null

  /** 对店铺的评价 */
  public shopEvaluate: ShopEvaluate
}

export class RequestPayDTO {
  // 全参构造方法
  constructor(paymentPlatform: number, payApiMethod: string, orderId: string | number, code: string) {
    this.payPlatformType = paymentPlatform
    this.payApiMethod = payApiMethod
    this.orderId = orderId + ''
    this.code = code
  }
  /**
   * 支付方式
   */
  public payPlatformType: number
  /**
   * 支付的API方式
   * native/app/jsapi等）
   */
  public payApiMethod: string
  public orderId: string
  public code: string
}
